home *** CD-ROM | disk | FTP | other *** search
/ C & C++ Multimedia Cyber Classroom / C and C++ Multimedia Cyber Classroom (Prentice Hall) (1998).iso / cpphtp2 / code.jar / code / ch07 / fig07_02.txt < prev    next >
Text File  |  1998-02-27  |  1KB  |  45 lines

  1. 1   // Fig. 7.2: fig07_02.cpp
  2. 2   // Using a member initializer to initialize a
  3. 3   // constant of a built-in data type.
  4. 4   
  5. 5   #include <iostream.h>
  6. 6   
  7. 7   class Increment {
  8. 8   public:
  9. 9      Increment( int c = 0, int i = 1 );
  10. 10     void addIncrement() { count += increment; }
  11. 11     void print() const;
  12. 12  
  13. 13  private:
  14. 14     int count;
  15. 15     const int increment;// const data member
  16. 16  };
  17. 17  
  18. 18  // Constructor for class Increment
  19. 19  Increment::Increment( int c, int i )
  20. 20     : increment( i )   // initializer for const member
  21. 21  { count = c; }
  22. 22  
  23. 23  // Print the data
  24. 24  void Increment::print() const
  25. 25  {
  26. 26     cout << "count = " << count
  27. 27          << ", increment = " << increment << endl;
  28. 28  }
  29. 29  
  30. 30  int main()
  31. 31  {
  32. 32     Increment value( 10, 5 );
  33. 33  
  34. 34     cout << "Before incrementing: ";
  35. 35     value.print();
  36. 36  
  37. 37     for ( int j = 0; j < 3; j++ ) {
  38. 38        value.addIncrement();
  39. 39        cout << "After increment " << j << ": ";
  40. 40        value.print();
  41. 41     }
  42. 42  
  43. 43     return 0;
  44. 44  }
  45.